As a stand-alone or within TestWorks' fully integrated STW/Regression tool set, SMARTS automates and simplifies the testing process by organizing the tests into a hierarchical tree, for the purpose of automating and allowing unattended execution of tests, and generating a variety of reports based on the test results.

SMARTS reads a user-designed "C" language test script. The hierarchically organized tests can be supplemented with test activation commands, comparison arguments and pass/fail evaluation methods. The test script can also be augmented with system calls to tools, such as the STW/Regression tool CAPBAK/X, which replays captured user sessions. The test script automatically generates a directory type listing of tests, providing a means of interactively executing the test script or viewing results of previous runs.

All SMARTS commands are context sensitive. Test execution and reporting is based on the selection, either of an individual test or group of tests, from the displayed test script "test tree hierarchy". When executed, SMARTS performs the pre-stated actions, runs a difference check on the outputs against the baseline, and accumulates a detailed record of the test results. Using the STW/Regression comparison system EXDIFF, differencing capabilities can be extended to ignore specified character strings and text line differences in ASCII files and masked areas in image files.

Four reports can be generated from test outcomes: the Status report lists the most recent test execution outcomes; the History report includes current and past test results for every test executed; the Regression report lists only those tests whose outcome has changed, identifying bugs which have been fixed or introduced since previous test activation; and the Certification report summarizes the total number and percentage of tests that have passed and failed, providing an overview of testing status.

SMARTS facilitates the testing process by providing an effective means of automatically determining discrepancies and monitoring the effects of regression testing.

SMARTS organizes and manages an extensive number of test scripts for the purpose of automating the testing process. The test script "test tree hierarchy" emulates the modularity and functionality of the tested application. It allows test cases to be supplemented with activation commands, comparison arguments, system calls, evaluation methods, and control structures (if, else and while clauses).

SMARTS will also incorporate other test script files, allowing for a modular organization of multiple test scripts.

Based on minimal test case information, a test generation utility expedites test script creation by generating a hierarchical SMARTS test structure consisting of an unlimited number of groups, sub-groups and test cases.

SMARTS allows unattended test processing by automatically executing all or a selected groups of tests. It runs tests according to criteria such as: executing tests a specified number of times, executing only new tests, running only tests which have failed during the previous execution, failing tests which exceed a pre-determined execution time and executing tests until a failed outcome.